Next | Prev | Top | Contents | Index
Glossary
- ABI
- Application Binary Interface.
- adjmsg
- Trim bytes from a message.
- allocb
- Allocate a message block.
- ASSERT
- Program verification macro.
- badaddr
- Check for bus error when reading an address.
- bcanput
- Test for flow control in a specified priority band.
- bcopy
- Copy data between address locations in the kernel.
- big-endian
- The default for a byte order.
- biodone
- Release buffer after block I/O and wakeup processes.
- bioerror
- Manipulate error field within a buffer header.
- biowait
- Suspend processes pending completion of block I/O.
- block driver
- A device driver, such as for magnetic tape or disk drives, that transfers data in blocks through the buf structure.
- bp_mapin
- Allocate virtual address space for buffer page list.
- bp_mapout
- Deallocate virtual address space for buffer page list.
- brelse
- Return a buffer to the system's free list.
- btod
- Convert from bytes to disk sectors.
- btop
- Convert size in bytes to size in pages (rounded down).
- bptophys
- Get physical address of buffer data.
- btopr
- Return number of memory pages contained in the specified number of bytes, rounded up.
- buf
- Block I/O data transfer structure, the basic data structure for block I/O transfers.
- bufcall
- Call a function when a buffer becomes available.
- bus-watching cache
- When an IP5, IP7, or IP19 system performs a DMA write into physical memory, the bus-watching cache automatically invalidates the data cache. This hardware function eliminates the need for data cache write back or invalidation in software.
- bzero
- Clear memory for a given number of bytes.
- canput
- Test for flow control in a stream.
- character device
- A device driver, such as a terminal or printer, that transfers data character by character. See also block device.
- character driver
- A device driver, such as for a terminal or printer, that transfers data characters between the device and the user program. Note that block devices, such as magnetic tape or disk drives, also support character access.
- close
- Relinquish access to a device. The user process invokes the close() system call when it is finished with a device, but the system does not necessarily execute your drvclose() entry point for that device.
- clrbuf
- Erase the contents of a buffer.
- cmn_err
- Display an error message or panic the system.
- copyb
- Copy a message block.
- copyin
- Copy data from user process virtual space to kernel virtual space.
- copymsg
- Copy a message.
- copyout
- Copy data from kernel virtual space to user process virtual space.
- copyreq
- STREAMS transparent ioctl() copy request structure - data necessary to process transparent ioctls.
- copyresp
- STREAMS transparent ioctl() copy response - data in response to a prior copy request necessary to continue processing transparent ioctls.
- cpsema
- Conditionally perform a "P" or wait semaphore operation.
- cvsema
- Conditionally perform a "V" or wait semaphore operation.
- data structure
- The memory storage area used to hold data types such as integers, strings, or an array of integers. The data structures associated with drivers are used as buffers for holding data being moved between the user data area and the device.
- datab
- STREAMS data block structure that describes the data of a STREAMS message.
- datamsg
- Test whether a message is a data message.
- DDI/DKI
- Device Driver Interface/Device Kernel Interface.
- delay
- Delay process execution for a specified number of clock ticks.
- devflag
- Driver flags - Silicon Graphics only supports flags D_MP, D_WBACK and D_OLD device.
- device driver
- A software routine that manages a hardware device; it brings the device into and out of service, sets hardware parameters in the device, transmits data from the kernel to the device, receives data from the device and passes data back to the kernel, and handles I/O errors.
- Device Driver Interface (DDI)
- The set of structures, routines, and optional functions used to implement a device driver.
- device types
- There are two types of devices available on any UNIX system: software and hardware. A software device is usually a section of memory and is referred to as a pseudo-device. A pseudo-device may provide access to system structures that are unavailable at the user level. For example, a pseudo-device such as a RAM disk could provide fast access to files. Some examples of hardware devices are disk drives, tape drives, printers, scanners, and terminals.
- dki_dcache_inval
- Invalidate the data cache for a given range of virtual addresses.
- dki_dcache_wb
- Write back the data cache for a given range of virtual addresses.
- dki_dcache_wbinval
- Write back and invalidate the data cache for a given range of virtual addresses.
- dma_map
- Load DMA mapping registers for an imminent transfer.
- dma_mapaddr
- Return the "bus virtual" address for a given map and address.
- dma_mapalloc
- Allocate a DMA map. See the dma_map(D3X) man page.
- dma_mapfree
- Free a DMA map. See the dma_map(D3X) man page.
- downstream
- The direction of STREAMS messages flowing through a write queue from the user process to the driver.
- Driver-Kernel Interface (DKI)
- A defined service interface for the entry point routines and utility functions specified for communications between the driver and the kernel. It does not include the driver/hardware or the driver/boot software interface.
- drv_getparm
- Retrieve kernel state information
- drv_hztousec
- Convert clock ticks to microseconds.
- drv_priv
- Determine whether credentials are privileged.
- drv_setparm
- Set kernel state information.
- drv_usectohz
- Convert microseconds to clock ticks.
- drv_usecwait
- Busy-wait for specified interval.
- dupb
- Duplicate a message block.
- dupmsg
- Duplicate a message.
- edtinit
- Initialize a device at boot time.
- EISA bus
- Enhanced Industry Standard Architecture bus.
- EISA Product Identifier (ID)
- EISA expansion boards have a four-byte product identifier (z=0 for the system board).
- eisa_dma_disable
- Disable recognition of hardware requests on a DMA channel.
- eisa_dma_enable
- Enable recognition of hardware requests on a DMA channel.
- eisa_dma_free_buf
- Free a previously allocated DMA buffer descriptor.
- eisa_dma_free_cb
- Free a previously allocated DMA command block.
- eisa_dma_get_buf
- Allocated DMA buffer descriptor.
- eisa_dma_get_cb
- Allocated a DMA command block.
- eisa_dma_prog
- Program a DMA operation for a subsequent software request.
- eisa_dma_stop
- Stop software-initiated DMA operation on a channel and release it.
- eisa_dma_swstart
- Initiate a DMA operation via software request.
- enableok
- Allow a queue to be serviced.
- Enhanced Industry Standard Architecture
- The EISA bus specification.
- errnos
- Error numbers.
- esballoc
- Allocate a message block using an externally supplied buffer.
- esbbcall
- Call a function when an externally supplied buffer can be allocated.
- etoimajor
- Convert external to internal major device number.
- flushband
- Flush messages in a specified priority band.
- flushbus
- Make sure contents of the write buffer are flushed to the system bus.
- flushq
- Flush messages on a queue.
- freeb
- Free a message block.
- freemsg
- Free a message.
- freerbuf
- Free a raw buffer header.
- freesema
- Free the resources associated with a semaphore.
- free_rtn
- STREAMS driver's message free routine structure.
- fubyte
- Fetch (read) a byte from user space.
- fuword
- Fetch (read) a word from user space.
- geteblk
- Get an empty buffer.
- getemajor
- Get external major device number.
- geteminor
- Get external minor device number.
- geterror
- Retrieve error number from a buffer header.
- getmajor
- Get internal major device number.
- getminor
- Get internal minor device number.
- getq
- Get the next message from a queue.
- getrbuf
- Get a raw buffer header.
- GIO bus
- Graphics I/O bus used on Indigo, Indigo2, and Indy workstations.
- halt
- Shut down the driver when the system shuts down.
- I/O operations
- Services that provide access to shared input/output devices and to the global data structures that describe their status. I/O operations open and close files and devices, read data from and write data to devices, set the state of devices, and read and write system data structures.
- info
- STREAMS driver and module information.
- init
- Initialize a device.
- initnsema
- Allocate a semaphore and initialize it to a given value.
- insq
- Insert a message into a queue.
- inter-process communication
- These are system calls that allow a process to send information to another process. There are several ways of sending information to another process: signals, pips, shared memory, message queues, semaphores, or streams and sockets.
- interrupt level
- A driver interrupt routine that is started when an interrupt is received from a hardware device. The system accesses the interrupt vector table, determines the major number of the device, and passes control to the appropriate interrupt routine.
- interrupt priority level
- The interrupt priority level at which the device requests that the CPU call an interrupt process. This priority can be overridden in the drivers's interrupt routine for critical sections of code with the spl function.
- intr
- Process a device interrupt after a transfer terminates (either normally upon completion or abnormally due to some error).
- iocblk
- STREAMS ioctl structure.
- ioctl
- Control a character device. Character devices may include a "special function" entry point, drvioct().
- iovec
- Data storage structure for I/O using uio.
- IRQ
- See Interrupt Request Input.
- itimeout
- Execute a function after a specified length of time.
- itoemajor
- Convert internal to external major device number.
- k0
- Virtual address range that is cached but not mapped by translation look-aside buffers. Also kseg0.
- k1
- Virtual address range that is neither cached nor mapped. Also kseg1.
- k2
- Virtual address range that can be both cached and mapped by translation look-aside buffers. Also kseg2.
- kern_calloc
- Allocate storage for objects of a specified size.
- kern_free
- Free kernel memory space
- kern_malloc
- Allocate kernel virtual memory.
- kmem_alloc
- Allocate space from kernel free memory.
- kmem_free
- Free previously allocated kernel memory.
- kmem_zalloc
- Allocate and clear space from kernel free memory.
- kvtophys
- Get physical address of buffer data.
- linkb
- Concatenate two message blocks.
- linkblk
- STREAMS multiplexor link structure - data needed by a multiplexing driver to set up or take down a multiplexor link.
- LOCK
- Acquire a basic lock Silicon Graphics LOCK function returns int instead of pl_t.
- LOCK_ALLOC
- Allocate and initialize a basic lock. Silicon Graphics doesn't support compilation option _LOCKTEST. splockmeter is provided for debugging purpose by Silicon Graphics.
- LOCK_DEALLOC
- Deallocate an instance of a basic lock
- makedevice
- Make device number from major and minor numbers.
- map
- Support virtual mapping for memory-mapped device.
- max
- Return the larger of two integers.
- messages
- STREAMS messages.
- min
- Return the lesser of two integers.
- mmap
- Check virtual mapping for memory-mapped device. (Silicon Graphics also supports map and unmap entry routines).
- mmapped device driver
- Memory-mapped device drivers are those in which the hardware is memory mapped into a user's address space; no interrupt or DMA service routine is available to the user process.
- module
- A STREAMS module consists of two related queue structures, one for upstream messages and one for downstream messages. One or more modules may be pushed onto a stream between the stream head and the driver, usually to implement and isolate a communication protocol or a line discipline.
- module_info
- STREAMS driver and module information - identification and limit values used to initialize the module's or driver's queues.
- msgb
- STREAMS message block structure.
- msgdsize
- Return number of bytes of data in a message.
- ngeteblk
- Get an empty buffer of the specified size.
- noenable
- Prevent a queue from being scheduled.
- open
- Gain access to a device. The kernel calls drvopen() when the user process issues an open() system call.
- OTHERQ
- Get pointer to queue's partner queue.
- pcmsg
- Test whether a message is a priority control message.
- phalloc
- Allocate and initialized a pollhead structure.
- phfree
- Free a pollhead structure.
- physiock
- Validate and issue raw I/O request.
- PIO
- Programmed I/O.
- pio_badaddr
- Check for bus error when reading an address.
- pio_bcopyin
- Copy data from VME bus address to kernel's virtual space.
- pio_bcopyout
- Copy data from kernel's virtual space to VME bus address.
- pio_mapaddr
- Used with FIXED maps to generate a kernel pointer to VME bus space.
- pio_mapalloc
- Allocate a PIO map.
- pio_mapfree
- Free up a previously allocated PIO map.
- pio_wbadaddr
- Check for bus error when writing to an address.
- poll
- Poll entry point for a non-stream character driver. Silicon Graphics currently does not support POLLRDNORM, POLLWRNORM, POLLRDBAND, and POLLWRBAND. A character device driver may include a drvpoll() entry point so that users can use select(2) or poll(2) to poll the file descriptors opened on such devices.
- pollwakeup
- Inform polling processes that an event has occurred.
- prefix
- Driver prefix. Throughout this manual, the prefix drv preceding a function, routine, or entry point represents the name of the device driver you are writing.
- primatives
- C operations from which more complex operations can be constructed.
- print
- Display a driver message on the system console.
- process control
- These are system calls that allow a process to control its own execution. A process can allocate memory, lock itself in memory, set its scheduling priorities, wait for events, execute a new program, or create a new process.
- proc_ref
- Obtain a reference to a process for signaling.
- proc_signal
- Send a signal to a process.
- proc_unref
- Release a reference to a process.
- psema
- Perform a "P" or wait semaphore operation.
- pseudo-device
- A section of memory that emulates the functionality of a hardware device in software. Pseudo-devices may provide access to system structures that are unavailable at the user level. For example, a pseudo-device such as a RAM disk could provide fast access to files.
- ptob
- Convert size in pages to size in bytes.
- put
- Receive messages from the preceding queue.
- putbq
- Place a message at the head of a queue.
- putctl
- Send a control message with a one-byte parameter to a queue.
- putctl1
- Send a control message with a one-byte parameter to a queue.
- putnext
- Send a message to the next queue.
- putq
- Put a message on a queue.
- qenable
- Schedule a queue's service routine to be run.
- qinit
- STREAMS queue initialization structure - pointers to processing procedures and default values for a queue().
- qreply
- Send a message in the opposite direction in a stream.
- qsize
- Find the number of messages on a queue.
- queue
- STREAMS queue structure - pointers to processing procedures, the next queue in the stream, flow control parameters, and messages.
- RD
- Get a pointer to the read queue.
- read
- Read data from a device. The kernel executes the drvread() or drvwrite() entry points whenever a user process calls the read() system call.
- rmalloc
- Allocate space from a private space management map.
- rmallocmap
- Allocate and initialize a private space management map.
- rmalloc_wait
- Allocate space from a private space management map.
- rmfree
- Free space into a private space management map.
- rmfreemap
- Free private space management map.
- rmvb
- Remove a message block from a message.
- rmvq
- Remove a message from a queue.
- SAMESTR
- Test whether the next queue is of the same type.
- SCSI
- Small Computer System Interface.
- SCSI bus
- See Small Computer System Interface.
- SCSI driver interface
- A collection of machine-independent input/output controls, functions, and data structures, that provide a standard interface for writing a SCSI driver.
- scsi_alloc
- Allocate communication channel between host adapter driver and a kernel level SCSI device driver
- scsi_command
- Issue a command to a SCSI device
- scsi_free
- Free communication channel between host adapter driver and a kernel level SCSI device driver
- scsi_info
- Get information about a SCSI device
- sgset
- Assign physical addresses to a vector of software scatter/gather registers.
- signals
- Signal numbers.
- size
- Return size of logical block device.
- sleep
- Suspend process execution pending occurrence of an event.
- SLEEP_ALLOC
- Allocate and initialize a sleep lock Silicon Graphics doesn't support compilation option _MPSTATS.
- SLEEP_DEALLOC
- Deallocate an instance of a sleep lock.
- SLEEP_LOCK
- Acquire a sleep lock. Always pass -1 as priority.
void SLEEP_LOCK(sleep_t *lockp, -1)
- SLEEP_LOCKAVAIL
- Query whether a sleep lock is available.
- SLEEP_LOCK_SIG
- Acquire a sleep lock The valid values for priority are as follows: PUSER, PCATCH, PSLEP, PPIPE, PVFS, and PWAIT SLEEP_TRYLOCK Try to acquire a sleep lock.
- SLEEP_TRYLOCK
- Try to acquire a sleep lock.
- SLEEP_UNLOCK
- Release a sleep lock.
- socket
- A software structure that represents one endpoint in a two-way communications link. Created by socket(2).
- spl
- Block/allow interrupts on a processor.
- srv
- Service queued messages.
- start
- Start initialize a device at system start-up.
- strategy
- Perform block I/O strategy.
- strcat
- Concatenate strings.
- strcpy
- Copy a string.
- Stream
- A linked list of kernel data structures that provide a full-duplex data path between a user process and a device. Streams are supported by the STREAMS facilities in UNIX System V Release 3 and later.
- stream head
- The stream head, which is inserted by the STREAMS subsystem, processes STREAMS-related system calls and performs data transfers between user space and kernel space. It is the component of a stream closet to the user process. Every stream has a stream head.
- STREAMS
- A kernel subsystem used to build a stream, which is a modular, full-duplex data path between a device and a user process. In IRIX 5.x and later, the TCP/IP stack sits on top of the STREAMS stack. The Transport Layer Interface (TLI) is fully supported.
- streamstab
- STREAMS driver and module declaration structure.
- streams_interrupt
- Synchronize interrupt-level function with STREAMS mechanism.
- STREAMS_TIMEOUT
- Synchronize timeout with STREAMS mechanism.
- strlog
- Submit messages to the log driver.
- stroptions
- STREAMS head option structure.
- strqget
- Get information about a queue or band of the queue.
- strqset
- Change information about a queue or band of the queue.
- subyte
- Set (write) a byte to user space.
- suword
- Set (write) a word to user space.
- TCP/IP
- Transmission Control Protocol/Internet Protocol.
- TFP
- SGI's pre-release, internal code name for the MIPS R8000 processor.
- TLI
- Transport Interface Layer.
- TRYLOCK
- Try to acquire a basic lock.
- uio
- scatter/gather I/O request - describes an I/O request that can be broken into different data storage areas.
- uiomove
- Copy data using uio structure.
- uiophysio
- Set up user data space for I/O.
- unbufcall
- Cancel a pending bufcall request.
- undma
- Unlock physical memory in user space.
- unlinkb
- Remove a message block from the head of a message.
- unload
- Clean up a loadable kernel module.
- UNLOCK
- Release a basic lock
- unmap
- Support virtual unmapping for memory-mapped device
- untimeout
- Cancel previous timeout request.
- untimeout_func
- Cancel a previous invocation of timeout by function.
- ureadc
- Copy a character to space described by uio structure.
- userdma
- Lock, unlock physical memory in user space
- uwritec
- Return a character from space described by uio structure.
- valusema
- Return the value associated with a semaphore.
- VME bus
- VERSA Module Eurocard bus.
- VME-bus adapter
- A hardware conduit that translates host CPU operations to VME-bus operations and decodes some VME-bus operations to translate them to the host side.
- vme_adapter
- Determine VME adapter.
- vme_ivec_alloc
- Allocate a VME bus interrupt VECTOR.
- vme_ivec_free
- Free up a VME bus interrupt VECTOR.
- vme_ivec_set
- Register a VME bus interrupt handler.
- volatile
- Inform the compiler of volatile variables.
- vpsema
- Perform an atomic "V" and "P" semaphore operation on two semaphores.
- vsema
- Perform a "V" or signal semaphore operation.
- v_getaddr
- Get the user address associated with virtual handle.
- v_gethandle
- Get unique identifier associated with virtual handle.
- v_getlen
- Get length of user address space associated with virtual handle.
- v_mapphys
- Map physical addresses into user address space.
- wakeup
- Resume suspended process execution.
- wbadaddr
- Check for bus error when writing to an address.
- WR
- Get a pointer to the write queue.
- write
- Write data to a device. The kernel executes the drvread() or drvwrite() entry points whenever a user process calls the read() or write() system calls.
-
Next | Prev | Top | Contents | Index